package com.xuecheng.message.sdk.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xuecheng.message.sdk.model.po.MqMessage;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author itcast
 */
public interface MqMessageMapper extends BaseMapper<MqMessage> {

    /**
     * 根据shardIndex查询消息
     *
     * @param shardTotal 分片总数
     * @param shardIndex 分片序号
     * @param messageType 消息类型
     * @param count 查询记录数
     * @return 当前分片下的消息记录
     */
    List<MqMessage> selectListByShardIndex(@Param("shardTotal") int shardTotal, @Param("shardIndex") int shardIndex, @Param("messageType") String messageType, @Param("count") int count, @Param("state") String state, @Param("maxRetryCount") Integer maxRetryCount);
}
